// 权限管理相关接口
import request from '@/utils/request.ts'

enum API {
  //获取全部已有用户账号信息
  ALLUSER_URL = '/admin/acl/user/',
  //添加一个新的用户账号
  ADDUSER_URL = '/admin/acl/user/save',
  //更新已有的用户账号
  UPDATEUSER_URL = '/admin/acl/user/update',
  //删除某一个账号
  DELETEUSER_URL = '/admin/acl/user/remove/',
  //获取全部职位,当前账号拥有的职位接口
  ALLROLEURL = '/admin/acl/user/toAssign/',
  //给已有的用户分配角色接口
  SETROLE_URL = '/admin/acl/user/doAssignRole',
  // 批量删除现在已有的用户信息
  BATCHREMOVEUSER='/admin/acl/user/batchRemove'
}
// 获取全部的用户信息
export const getAllUser = (page: number, limit: number, username: string) =>
  request.get(API.ALLUSER_URL + `${page}/${limit}/?username=${username}`)
// 添加或更新已有的用户信息
export const addOrUpdateUserInfo = (data: any) => {
  // 如果有id，那么就是更新已有的用户信息，否则的话就是新增一个用户信息
  if (data.id) {
    return request.put(API.UPDATEUSER_URL, data)
  } else {
    return request.post(API.ADDUSER_URL, data)
  }
}
// 删除某个账号
export const deleteUserAPI = (userId: number) =>
  request.delete(API.DELETEUSER_URL + userId)

// 获取当前账号拥有的所有的职位信息
export const getAllRoles = (userId: number) => request.get(API.ALLROLEURL + userId)
// 给已有的用户分配角色
export const saveUserRole=(data:any)=>request.post(API.SETROLE_URL,data)
// 批量删除当前已有的用户信息
export const batchRemoveUser=(idsList:number[])=>request.delete(API.BATCHREMOVEUSER, { data: idsList })